Poznańskie Centrum Superkomputerowo - Sieciowe

 

 

 

 

PROJEKT LDAP

 

 

 

 

 

 

 

 

Analiza i warunki włączenia protokołu LDAP

do zarządzania siecią i QoS

 

 

Bartosz Belter

Jerzy Chochulski

Wiktor Procyk

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Poznań 2003

 


Spis treści

 

 

1       Wstęp. 3

2       Analiza wymagań.. 4

2.1     Informacje ogólne. 4

2.2     Stan obecny.. 4

2.3     Wymagania funkcjonalne i niefunkcjonalne. 4

2.4     Scenariusz użycia.. 5

3       Projekt.. 7

4       Podsumowanie.. 12

Bibliografia.. 13

 

 

 

1         Wstęp

 

W obecnych czasach można obserwować bardzo szybki rozwój sieci komputerowych oraz Internetu. Na rynku usług dostępu do Internetu funkcjonuje coraz większa liczba dostawców. Konkurencja pomiędzy dostawcami, mimo ciągle rosnących przepustowości łącz, sprzyja obniżaniu cen usług. Coraz częściej też przepustowość i cena nie są jedynymi argumentami przy wyborze oferty. Klienci zwracają także uwagę na jakość usługi (ang. Quality of Service - QoS), czyli parametry takie jak niezawodność, minimalna gwarantowana przepustowość, straty pakietów czy opóźnienie jedno- lub dwukierunkowe. Wartości graniczne parametrów QoS reguluje dodatkowa umowa z klientem - SLA (ang. Service Level Agreement).

Oferowanie usługi dostępu do Internetu spełniającej rygorystyczne normy dotyczące jakości wymaga stosowania niezawodnych urządzeń sieciowych wysokiej jakości jak również, a może nawet przede wszystkim, monitorowania i sprawnego zarządzania.

Celem niniejszego opracowania jest analiza włączenia protokołu LDAP do zarządzania siecią i QoS

2         Analiza wymagań

2.1        Informacje ogólne

Zarządzanie siecią komputerową obejmuje następujące obszary:

ˇ         zarządzanie usterkami (ang. Fault Management) - monitorowanie, wykrywanie i rozwiązywanie problemów, powiadamianie o problemach

ˇ         zarządzanie wydajnością (ang. Performance Management) - monitorowanie i regulacja wydajności urządzeń sieciowych

ˇ         zarządzanie rozliczeniami (ang. Accounting Management) - gromadzenie statystyk na potrzeby rozliczeniowe

ˇ         zarządzanie konfiguracją (ang. Configuration Management) - monitorowanie zmian konfiguracji urządzeń sieciowych

ˇ         zarządzanie bezpieczeństwem (ang. Security Management) - kontrola uprawnień użytkowników oraz mechanizmów ich identyfikacji

Choć istnieją platformy zarządzania, które pokrywają w mniejszym lub większym stopniu wszystkie wymienione powyżej obszary zarządzania, to jednak ze względu na heterogeniczność sieci lub specyfikę wymagań w praktyce używane są oddzielne narzędzia.

2.2        Stan obecny

Do zarządzania sieciami POL-34 i POZMAN używane są następujące narzędzia:

-          Tivoli NetView - w zakresie monitorowania i wykrywania usterek

-          MRTG - w zakresie monitorowania wydajności i gromadzenia statystyk

-          RANCID - w zakresie monitorowania zmian konfiguracji urządzeń sieciowych

-          TACACS - w zakresie identyfikacji użytkowników i autoryzacji wydawanych przez nich poleceń

-          system TT (ang. Trouble Ticket System) - w zakresie powiadamiania o problemach i podjętych działaniach naprawczych.

Żadne z wspomnianych powyżej narzędzi nie oferuje gromadzenia danych kontaktowych klientów ani też nie wspomaga kontaktu z klientem (historia zgłoszeń). Funkcjonalność taka byłaby bardzo istotna dla usprawnienia przepływu informacji klient-dostawca, co z pewnością zaowocowałoby wyższym standardem obsługi. Podobnie - żadne narzędzie nie umożliwia odnotowywania istotnych szczegółów z umowy a dotyczących funkcjonowania sieci jak na przykład parametry QoS.

2.3        Wymagania funkcjonalne i niefunkcjonalne

Platformy zarządzania, jako zestaw wzajemnie zintegrowanych narzędzi, są wygodne w użyciu, lecz ze względu na heterogeniczność sieci oraz specyficzne potrzeby nie zawsze jest możliwe pełne wykorzystanie oferowanej przez nie funkcjonalności tak, by pokryć wszystkie obszary zarządzania. Samodzielne narzędzia, choć trudniejsze w utrzymaniu (w przypadku zmiany trzeba ją uwzględnić w konfiguracji wszystkich narzędzi), można lepiej dopasować do własnych potrzeb. Dlatego też przy analizie wdrożenia nowego narzędzia należy rozpatrzyć możliwość jego integracji z pozostałymi narzędziami.

System TACACS ułatwia zarządzanie dostępem i uprawnieniami użytkowników na routerach Cisco. Umożliwia także zapisywanie w pliku logu informacji o wydanych przez użytkowników poleceniach. System ten w obecnej formie znakomicie spełnia swoje zadania i nie planuje się jego modyfikacji.

Możliwości integracji pozostałych narzędzi z bazą LDAP także są ograniczone, czy to ze względu na bezpieczeństwo, czy też częstotliwość i ilość aktualizowanej informacji. Dane dotyczące natężenia ruchu na poszczególnych interfejsach urządzeń sieciowych oraz stopnia wykorzystania procesora aktualizowane są w interwałach 5 lub 10 minut. Równie często aktualizowane są statystyki straty pakietów (ang. Packet Loss) i czasu odpowiedzi (ang. Round Trip Time). Liczba zdarzeń w sieci odnotowywanych w ciągu doby przez system zarządzania przekracza kilka tysięcy.

Specyfika bazy LDAP znakomicie odpowiada informacji gromadzonej w systemach TT. Wdrożenie systemu korzystającego z bazy LDAP pozwoliłoby zastąpić system TT wzbogacając jednocześnie funkcjonalność poprzez powiązanie problemów z konkretnymi klientami oraz umożliwiając gromadzenie informacji o danych kontaktowych klienta, istotnych dla klienta parametrów QoS oraz wszystkich interakcji dotyczących wybranego klienta i/lub problemu.

2.4        Scenariusz użycia

Wdrożenie omawianego systemu korzystającego z bazy LDAP wymagałoby wprowadzenia do bazy wszystkich osób odpowiedzialnych za interakcję z klientami (przyjmowanie zgłoszeń telefonicznych oraz oddzwanianie), klientów wraz informacją o ich przyłączach do sieci dostawcy usługi dostępu do Internetu oraz listy możliwych do monitorowania parametrów QoS. W przypadku klientów z podpisaną umową dotyczącą jakości przyłącza ze zdefiniowanymi wartościami progowymi parametrów - w bazie należy umieścić także te wartości.

W przypadku przyjmowania zgłoszenia operator korzystający z systemu powinien w kolejnych krokach:

-          zalogować się do systemu

-          pozyskać od osoby dane jednoznacznie identyfikujące klienta, tj. nazwę firmy lub adres (IP lub domenowy) routera brzegowego klienta

-          na podstawie uzyskanych danych zidentyfikować klienta w bazie; system powinien wyświetlić dane o kliencie, jego przyłączach i przyznanych pulach adresowych, osobach kontaktowych, listę zgłoszeń oraz odpowiadających im problemów wraz z podjętymi akcjami, informacje o płatnościach klienta (czy terminowo wywiązuje się ze swoich zobowiązań finansowych wobec dostawcy).

-          pozyskać dane personalne osoby zgłaszającej problem

-          sprawdzić w bazie, czy osoba zgłaszająca jest upoważniona do zgłaszania problemów, ewentualnie poprosić o aktualizację danych kontaktowych lub upomnieć osobę zgłaszającą, żeby zwróciła się do osób delegowanych przez klienta do zgłaszania problemów

-          dowiedzieć się, czy zgłoszenie dotyczy problemu, który już jest odnotowany w systemie, jeżeli nie – w systemie wraz ze zgłoszeniem odnotowywany jest nowy problem

-          przyjąć zgłoszenie umieszczając stosowny opis przy interakcji z klientem

3         Projekt

 

Zgodnie z analizą wymagań system powinien służyć przede wszystkim do gromadzenia informacji o klientach, ich wymaganiach co do jakości usługi dostępu do Internetu (parametry QoS)
i innych istotnych szczegółach umowy, o problemach dotyczących funkcjonowania sieci oraz działaniach podjętych na rzecz usunięcia problemu. Dane te powinny być wzajemnie powiązane.

Drzewo danych w bazie LDAP, które odzwierciedlałoby strukturę informacji wyspecyfikowanych w  analizie wymagań, zostało zaprezentowane poniżej.

 

 

 

dc=psncQoS,dc=poznan,dc=pl

 |

 +---- ou=Clients                              [klasa organizationalUnit]

 |

 +---- ou=Problems                             [klasa organizationalUnit]

 |

 +---- ou=QoSParameters                               [klasa organizationalUnit]

 |

 +---- ou=Operators                            [klasa organizationalUnit]

 

 

Na najwyższym poziomie hierarchii znajdują się klienci, problemy, parametry QoS oraz operatorzy. Problemy, choć dotyczą klientów, to jednak występują na tym samym poziomie, gdyż jeden problem, na przykład uszkodzenie światłowodu, brak prądu w węźle lub uszkodzenie urządzenia, może dotyczyć wielu klientów. W gałęzi QoSParameters przechowywane będą rodzaje parametrów QoS wraz z opisami. Wartości graniczne tych parametrów dla poszczególnych klientów będą przechowywane w gałęzi Clients. Gałąź Operators będzie używana do przechowywania informacji o pracownikach biorących udział w kontaktach z klientem.

Pełne drzewo, wraz z rozwinięciami gałęzi zamieszczone zostało na następnych stronach.
W drzewie danych wykorzystano klasy standardowe (organizationalUnit, inetOrgPerson) oraz klasy opracowane na potrzeby niniejszego projektu. Klasy zdefiniowane na potrzeby tego projektu posiadają prefiks psncQoS. Klasa inetOrgPerson zdefiniowana w dokumencie RFC2798 "Definition of the inetOrgPerson LDAP Object Class" służy do przechowywania informacji o osobach pełniących funkcję operatora sieci. Dodatkowo z klasy tej wywiedziona została klasa psncQoSContact służąca do przechowywania danych kontaktowych klientów. Według przyjętych reguł nazewnictwa nazwy formalne tworzone są na podstawie polskich wyrazów, natomiast nazwy klas obiektów w schemacie bazy LDAP z wyrazów angielskojęzycznych poprzedzonych prefiksem.

 

dc=psncQoS,dc=poznan,dc=pl

|

+---- ou=Clients                                      [klasa organizationalUnit]

|      |

|      +---- cn=Client_1                              [klasa psncQoSClient]

|      |      |

|      |      +---- ou=Contracts                      [klasa organizationalUnit]

|      |      |      |

|      |      |      +---- cn=Contract_1               [klasa psncQoSContract]

|      |      |      |

|      |      |      +---- …

|      |      |      |

|      |      |      +---- cn=Contract_n

|      |      |

|      |      +---- ou=Payments                       [klasa organizationalUnit]

|      |      |      |

|      |      |      +---- cn=Payment_1                [klasa psncQoSPayment]

|      |      |      |

|      |      |      +---- …

|      |      |      |

|      |      |      +---- cn=Payment_n

|      |      |

|      |      +---- ou=Contacts                       [klasa organizationalUnit]

|      |      |      |

|      |      |      +---- cn=Contact_1                [klasa psncQoSContact]

|      |      |      |

|      |      |      +---- …

|      |      |      |

|      |      |      +---- cn=Contact_n

|      |      |

|      |      +---- ou=Connections                           [klasa organizationalUnit]

|      |      |      |

|      |      |      +---- cn=Connection_1                   [klasa psncQoSConnection]

|      |      |      |      |

|      |      |      |      +---- cn=IPAddressSpace_1  [klasa psncQoSIPAddressSpace]

|      |      |      |      |

|      |      |      |      +---- …

|      |      |      |      |

|      |      |      |      +---- cn=IPAddressSpace_n

|      |      |      |

|      |      |      +---- …

|      |      |      |

|      |      |      +---- cn=Connection_n

|      |      |

|      |      +---- ou=Interactions                          [klasa organizationalUnit]

|      |      |      |

|      |      |      +---- cn=Interaction_1                  [klasa psncQoSInteraction]

|      |      |      |

|      |      |      +---- …

|      |      |      |

|      |      |      +---- cn=Interaction_n

|      |      |

|      |      +---- ou=ClientQoSParameters                   [klasa organizationalUnit]

|      |            |

|      |            +---- cn=ClientQoSParameter_1           [klasa psncQoSClientParameter]

|      |            |

|      |            +---- …

|      |            |

|      |            +---- cn=ClientQoSParameter_n

|      |

|      +---- …

|      |

|      +---- cn=Client_n

|

+---- ou=Problems                                     [klasa organizationalUnit]

       |

       +---- cn=Problem_1                             [klasa psncQoSProblem]

       |      |

       |      +---- cn=Action_1                       [klasa psncQoSAction]

       |      |

       |      +---- …

       |      |

       |      +---- cn=Action_n

       |

       +---- …

       |

       +---- cn=Problem_n

(ciag dalszy)

 

dc=psncQoS,dc=poznan,dc=pl

|

+---- ou=QoSParameters                                      [klasa organizationalUnit]

|      |

|      +---- cn=QoSParameter_1                        [klasa psncQoSParameter]

|      |

|      +---- …

|      |

|      +---- cn=QoSParameter_n

|

+---- ou=Operators                                    [klasa organizationalUnit]

       |

       +---- cn=Operator_1                            [klasa inetOrgPerson]

       |

       +---- …

       |

       +---- cn=Operator_n

 

 

Klienci podłączeni są do sieci dostawcy usługi dostępu do Internetu w co najmniej jednym punkcie. Dla każdego punktu styku określona jest przestrzeń adresowa klienta obsługiwana przez ten punkt. Oprócz informacji o podłączeniu do sieci pamiętane będą również możliwe sposoby kontaktu z klientem, parametry QoS, interakcje z klientem (zgłoszenia telefoniczne i poprzez pocztę elektroniczną), płatności.

 

Poniżej zamieszczone zostały klasy obiektów w formie tabelarycznego zestawienia atrybutów poszczególnych obiektów. Gwiazdkami przed nazwą atrybutu oznaczono pola obowiązkowe.

 

Obiekt KLIENT - klasa psncQoSClient

NAZWA ATRYBUTU

TYP

ZNACZENIE

*cn

String

nazwa

*psncQoSName

String

pełna nazwa firmy

 psncQoSNIP

String

numer NIP

 psncQoSREGON

String

numer REGON

 postalAddress

String

adres pocztowy (sprawy administracyjne)

 mail

String

adres e-mail (sprawy administracyjne)

 telephoneNumber

TelephoneNumber

numer telefonu (sprawy administracyjne)

 facsimileTelephoneNumber

String

adres pocztowy (sprawy administracyjne)

 description

String

adnotacje

Obiekt UMOWA - klasa psncQoSContract

NAZWA ATRYBUTU

TYP

ZNACZENIE

*cn

String

nazwa

*psncQoSContractNr

String

numer umowy

*psncQoSPaymentInstall

String

wysokość opłaty instalacyjnej

*psncQoSPaymentValue

String

wysokość opłaty abonamentowej

*psncQoSReachDate

String

data zawarcia umowy

*psncQoSConnectDate

String

data rozpoczęcia świadczenia usługi

 psncQoSTerminateDate

String

data wygaśnięcia/wypowiedzenia umowy

Obiekt PŁATNOŚĆ - klasa psncQoSPayment

NAZWA ATRYBUTU

TYP

ZNACZENIE

*cn

String

numer faktury

*psncQoSAmount

String

kwota do zapłaty

*psncQoSDiscount

String

uwzględniony w kwocie rabat

*psncQoSPaid

String

czy wpłynęły pieniądze

*psncQoSContractLink

DN

LINK na umowę, której płatność dotyczy

Obiekt KONTAKT - klasa psncQoSContact (wywiedziona z inetOrgPerson)

NAZWA ATRYBUTU

TYP

ZNACZENIE

 uid

String

identyfikator osoby

*cn

String

imię + nazwisko

 givenName

String

imię

 sn

String

nazwisko

 mail

String

adres e-mail

 telephoneNumber

TelephoneNumber

numer telefonu

 mobile

String

numer telefonu komórkowego

 psncQoSWorkingHoursFrom

String

godziny kontaktu telefonicznego – wartość minimum

 psncQoSWorkingHoursTo

String

godziny kontaktu telefonicznego – wartość maksimum

 description

String

adnotacje

Obiekt ŁĄCZE - klasa psncQoSConnection

NAZWA ATRYBUTU

TYP

ZNACZENIE

*cn

String

nazwa

 psncQoSInterface

String

urządzenie i numer portu po stronie dostawcy

 psncQoSRouterIPAddress

String

adres IP routera po stronie dostawcy

*psncQoSClientIPAddress

String

adres IP routera brzegowego klienta/sieci klienta

 psncQoSDomainName

String

adres domenowy routera brzegowego klienta/domeny klienta

 psncQoSInterfaceType

String

typ łącza (Eth, FEth)

 description

String

adnotacje

Obiekt PRZESTRZEŃ_ADRESOWA - klasa psncQoSIPAddressSpace

NAZWA ATRYBUTU

TYP

ZNACZENIE

*cn

String

nazwa

*psncQoSNetworkAddress

String

adres sieci przyznanej puli IP

*psncQoSNetworkPrefix

String

długość prefiksu IP

Obiekt INTERAKCJA - klasa psncQoSInteraction

NAZWA ATRYBUTU

TYP

ZNACZENIE

*cn

String

nazwa

*psncQoSDate

String

data interakcji

*psncQoSTime

String

godzina interakcji

*psncQoSDirection

String

interakcja przychodząca/wychodząca

*psncQoSOperatorLink

DN

LINK na psncQoSOperator

 psncQoSContactLink

DN

LINK na psncQoSContact

*description

String

opis rozmowy/treść poczty elektronicznej

*psncQoSProblemLink

DN

LINK na psncQoSProblem

 


Obiekt PARAMETR_QOS_KLIENT - klasa psncQoSClientParameter

NAZWA ATRYBUTU

TYP

ZNACZENIE

*cn

String

nazwa

*psncQoSParameterLink

DN

LINK na psncQoSParameter

*psncQoSValue

String

wartość graniczna parametru QoS wyspecyfikowana w umowie SLA

 description

String

specyfikacja parametru QoS

Obiekt PROBLEM - klasa psncQoSProblem

NAZWA ATRYBUTU

TYP

ZNACZENIE

*cn

String

nazwa

 psncQoSProblemStartDate

String

początek problemu - data

 psncQoSProblemStartTime

String

początek problemu - godzina

 psncQoSProblemStopDate

String

koniec problemu - data

 psncQoSProblemStopTime

String

koniec problemu – godzina

*psncQoSState

String

status problemu

 description

String

opis problemu

 psncQoSReason

String

opis przyczyny problemu

 psncQoSSolution

String

opis rozwiązania problemu

*psncQoSClientLink

DN

LINK na psncQoSClient (atrybut wielowartościowy)

Obiekt AKCJA - klasa psncQoSAction

NAZWA ATRYBUTU

TYP

ZNACZENIE

*cn

String

nazwa

*psncQoSDate

String

Czas akcji – data

*psncQoSTime

String

Czas akcji - godzina

*psncQoSOperatorLink

DN

LINK na psncQoSOperator

*description

String

opis akcji

Obiekt PARAMETR_QOS - klasa psncQoSParameter

NAZWA ATRYBUTU

TYP

ZNACZENIE

*cn

String

nazwa

*psncQoSName

String

nazwa parametru QoS

*description

String

opis parametru QoS

 

Schemat danych zapisany w formalnej postaci akceptowanej przez serwer LDAP (implementacja iPlanet Sun ONE Directory Server) przyjmuje następującą postać :

 

#

# psncQoS Schema

#

dn: cn=schema

#

# "psncQoS" attributes

#

attributeTypes: ( psncQoSName-oid NAME 'psncQoSName'

                DESC 'PSNC QoS Name Attribute'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSNIP-oid NAME 'psncQoSNIP'

                DESC 'NIP identifier of PSNC's Client'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSREGON-oid NAME 'psncQoSREGON'

                DESC 'REGON identifier of PSNC's Client'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSContractNr-oid NAME 'psncQoSContractNr'

                DESC 'PSNC Contract Numbert'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSPaymentInstall-oid NAME 'psncQoSPaymentInstall'

                DESC 'Installation Payment'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSPaymentValue-oid NAME 'psncQoSPaymentValue'

                DESC 'Payment Value'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSReachDate-oid NAME 'psncQoSReachDate'

                DESC 'Date of contract reach'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSConnectDate-oid NAME 'psncQoSConnectDate'

                DESC 'Date of connection'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSTerminateDate-oid NAME 'psncQoSTerminateDate'

                DESC 'Date of contract termination'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSAmount-oid NAME 'psncQoSAmount'

                DESC 'PSNC QoS Amount Attribute'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSDiscount-oid NAME 'psncQoSDiscount'

                DESC 'PSNC QoS Discount'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSPaid-oid NAME 'psncQoSPaid'

                DESC 'PSNC QoS Payment Flag'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSContractLink-oid NAME 'psncQoSContractLink'

                DESC 'Link to Contract object'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSWorkingHoursFrom-oid NAME 'psncQoSWorkingHoursFrom'

                DESC 'Begin of working hours'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSWorkingHoursTo-oid NAME 'psncQoSWorkingHoursTo'

                DESC 'End of working hours'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSInterface-oid NAME 'psncQoSInterface'

                DESC 'PSNC QoS Interface'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSRouterIPAddress-oid NAME 'psncQoSRouterIPAddress'

                DESC 'Router IP Address'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSClientIPAddress-oid NAME 'psncQoSClientIPAddress'

                DESC 'Client IP Address'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSDomainName-oid NAME 'psncQoSDomainName'

                DESC 'PSNC QoS Domain Name'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSInterfaceType-oid NAME 'psncQoSInterfaceType'

                DESC 'PSNC QoS Interface Type'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSNetworkAddress-oid NAME 'psncQoSNetworkAddress'

                DESC 'PSNC QoS Network Address'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )


attributeTypes: ( psncQoSNetworkPrefix-oid NAME 'psncQoSNetworkPrefix'

                DESC 'PSNC QoS Network Prefix'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSDate-oid NAME 'psncQoSDate'

                DESC 'PSNC QoS Date Attribute'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSTime-oid NAME 'psncQoSTime'

                DESC 'PSNC QoS Time Attribute'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSDirection-oid NAME 'psncQoSDirection'

                DESC 'Direction of interaction'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSOperatorLink-oid NAME 'psncQoSOperatorLink'

                DESC 'PSNC QoS Operator Link'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSContactLink-oid NAME 'psncQoSContactLink'

                DESC 'PSNC QoS Contact Link'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSProblemLink-oid NAME 'psncQoSProblemLink'

                DESC 'PSNC QoS Problem Link'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSParameterLink-oid NAME 'psncQoSParameterLink'

                DESC 'PSNC QoS Parameter Link'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSValue-oid NAME 'psncQoSValue'

                DESC 'PSNC QoS Value Attribute'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSProblemStartDate-oid NAME 'psncQoSProblemStartDate'

                DESC 'Problem Start Date'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSProblemStartTime-oid NAME 'psncQoSProblemStartTime'

                DESC 'Problem Start Time'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSProblemStopDate-oid NAME 'psncQoSProblemStopDate'

                DESC 'Problem Stop Date'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSProblemStopTime-oid NAME 'psncQoSProblemStopTime'

                DESC 'Problem Stop Time'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSState-oid NAME 'psncQoSState'

                DESC 'PSNC QoS State Attribute'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSReason-oid NAME 'psncQoSReason'

                DESC 'PSNC QoS Reason Attribute'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

attributeTypes: ( psncQoSSolution-oid NAME 'psncQoSSolution'

                DESC 'PSNC QoS Solution Attribute'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE

                X-ORIGIN 'user defined' )

 

attributeTypes: ( psncQoSClientLink-oid NAME 'psncQoSClientLink'

                DESC 'PSNC QoS Client Link'

                SYNTAX 1.3.6.1.4.1.1466.115.121.1.12

                X-ORIGIN 'user defined' )

 

#

#  Object class definitions

#

objectClasses: ( psncQoSClient-oid NAME 'psncQoSClient'

               SUP top

               STRUCTURAL MUST ( cn $ psncQoSName )

               MAY ( psncQoSNIP $ psncQoSREGON $ postalAddress $ mail $ telephoneNumber $

               facsimileTelephoneNumber $ description )

               X-ORIGIN 'user defined' )

objectClasses: ( psncQoSContract-oid NAME 'psncQoSContract'

               SUP top

               STRUCTURAL MUST ( cn $ psncQoSContractNr $ psncQoSPaymentInstall $

               psncQoSPaymentValue $ psncQoSReachDate $ psncQoSConnectDate )

               MAY psncQoSTerminateDate

               X-ORIGIN 'user defined' )

objectClasses: ( psncQoSPayment-oid NAME 'psncQoSPayment'

               SUP top

               STRUCTURAL MUST ( cn $ psncQoSAmount $ psncQoSDiscount $ psncQoSPaid $

               psncQoSContractLink)

               X-ORIGIN 'user defined' )

objectClasses: ( psncQoSContact-oid NAME 'psncQoSContact'

               SUP inetOrgPerson

               MAY ( psncQoSWorkingHoursFrom $ psncQoSWorkingHoursTo )

               X-ORIGIN 'user defined' )

objectClasses: ( psncQoSConnection-oid NAME 'psncQoSConnection'

               SUP top

               STRUCTURAL MUST ( cn $ psncQoSClientIPAddress )

               MAY ( psncQoSInterface $ psncQoSRouterIPAddress $ psncQoSDomainName $

               psncQoSInterfaceType $ description )

               X-ORIGIN 'user defined' )

objectClasses: ( psncQoSIPAddressSpace-oid NAME 'psncQoSIPAddressSpace'

               SUP top

               STRUCTURAL MUST ( cn $ psncQoSNetworkAddress $ psncQoSNetworkPrefix )

               X-ORIGIN 'user defined' )

objectClasses: ( psncQoSInteraction-oid NAME 'psncQoSInteraction'

               SUP top

               STRUCTURAL MUST ( cn $ psncQoSDate $ psncQoSTime $ psncQoSDirection $

               psncQoSOperatorLink $ psncQoSProblemLink $ description )

               MAY psncQoSContactLink

               X-ORIGIN 'user defined' )

objectClasses: ( psncQoSClientParameter-oid NAME 'psncQoSClientParameter'

               SUP top

               STRUCTURAL MUST ( cn $ psncQoSParameterLink $ psncQoSValue )

               MAY description

               X-ORIGIN 'user defined' )

objectClasses: ( psncQoSProblem-oid NAME 'psncQoSProblem'

               SUP top

               STRUCTURAL MUST ( cn $ psncQoSState $ psncQoSClientLink )

               MAY ( psncQoSProblemStartDate $ psncQoSProblemStartTime $

               psncQoSProblemStopDate $ psncQoSProblemStopTime $ psncQoSReason $

               psncQoSSolution $ description)

               X-ORIGIN 'user defined' )

objectClasses: ( psncQoSAction-oid NAME 'psncQoSAction'

               SUP top

               STRUCTURAL MUST ( cn $ psncQoSDate $ psncQoSTime $ psncQoSOperatorLink $

               description )

               X-ORIGIN 'user defined' )

objectClasses: ( psncQoSParameter-oid NAME 'psncQoSParameter'

               SUP top

               STRUCTURAL MUST ( cn $ psncQoSName $ description)

               X-ORIGIN 'user defined' )

4         Podsumowanie

 

Cel projektu to analiza włączenia protokołu LDAP do zarządzania siecią i QoS. Analiza wykazała, że choć możliwości włączenia protokołu LDAP do narzędzi stosowanych obecnie są niewielkie, to jednak hierarchiczna baza LDAP może posłużyć do budowy nowych narzędzi oferujących szerszą funkcjonalność i lepiej pasujących do specyfiki wymagań operatora telekomunikacyjnego.

W projekcie dokonano analizy zakresu informacji, która powinna być składowana w bazie LDAP, zaproponowano drzewo i schemat danych przystający do charakteru informacji oraz umożliwiający stworzenie aplikacji odpowiadającej podanemu w rozdziale Analiza wymagań scenariuszowi użycia.

Na etapie analizy zostało wykazane, że nie jest możliwe zastosowanie bazy LDAP jako platformy integrującej dane z obecnie wykorzystywanych narzędzi zarządzania.  Katalogowa baza LDAP znakomicie nadawałaby się do gromadzenia danych kontaktowych klientów. Dzięki elastyczności w zakresie typu informacji system oparty na usłudze LDAP mógłby wspomagać operatora w kontakcie z klientem także poprzez gromadzenie w systemie historii zgłoszeń. System mógłby służyć również do odnotowywania istotnych szczegółów z umowy a dotyczących funkcjonowania sieci jak na przykład parametry QoS.

Wdrożenie projektu umożliwiłoby lepsze zarządzanie kontaktami z klientami a przez to szybsze i bardziej sprawne reagowanie na zgłoszone problemy. Pozwoliłoby to na podniesienie jakości usługi, a w dalszej konsekwencji lepszy wizerunek firmy u klientów i zwiększenie liczby klientów.

Bibliografia

 

[ 1 ]

T.A. Howes, M.C. Smith, G.S. Good “Understanding and Deploying LDAP Directory Services”, 1999

[ 2 ]

RFC2798 Definition of the inetOrgPerson LDAP Object Class

ftp://ftp.rfc-editor.org/in-notes/rfc2798.txt

[ 3 ]

POL-34 Network Operation Center

http://noc.man.poznan.pl

[ 4 ]

Implementacja usług o zróżnicowanej jakości w sieci POZMAN

http://qos.man.poznan.pl/files/diffserv.pdf